<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>

<body>
    
    <button class="startRec">开始录音</button>
    <button class="stopRec">停止录音</button>
    <button class="playRec">播放录音</button>
    <button class="transRec">转换录音</button>
    <p class="resRec">声音识别结果：</p>

    <script src="js/jquery-2.1.0.js"></script>
    <script src="js/jssdk.js"></script>
    <script>
        //我的测试号
        var appId = "wxeb31508256b4ce1a";
        var appSecret = "be8d49ed8ad2a409cf5a8c0875b460a1"

        $.ajax({
            url: "http://shuaitp.bluej.cn/index.php/index/api/getJSSDK",
            data: {
                appId,
                appSecret
            },
            success(res) {
                console.log(res);
                wx.config({
                    debug: false,
                    appId: res.data.appId,
                    timestamp: res.data.timestamp,
                    nonceStr: res.data.nonceStr,
                    signature: res.data.signature,
                    jsApiList: [
                        // 所有要调用的 API 都要加到这个列表中
                        "onMenuShareTimeline",
                        "onMenuShareAppMessage",
                        "startRecord",
                        "stopRecord",
                        "onVoiceRecordEnd",
                        "playVoice",
                        "translateVoice"
                    ]
                });
                wx.ready(function () {
                    console.warn("初始化jSSDK成功");
                    //分享到朋友圈
                    wx.onMenuShareTimeline({
                        title: "016", // 分享标题
                        link: "", // 分享链接
                        imgUrl: "", // 分享图标
                        trigger: function () { //监听Menu中的按钮点击时触发的方法，该方法仅支持Menu中的相关接口。

                        },
                        success: function (res) {
                            alert("分享成功")
                        },
                        cancel: function (res) {
                            alert("取消分享")
                        },
                        fail: function (res) {

                        }
                    });
                    //分享给朋友
                    wx.onMenuShareAppMessage({
                        title: "016jssdk", // 分享标题
                        desc: "这是描述，分享朋友圈没有这个配置", // 分享描述
                        link: "", // 分享链接
                        imgUrl: "", // 分享图标
                        trigger: function (res) { //监听Menu中的按钮点击时触发的方法，该方法仅支持Menu中的相关接口。

                        },
                        success: function (res) {
                            alert("分享成功")
                        },
                        cancel: function (res) {
                            alert("取消分享")
                        },
                        fail: function (res) {

                        }
                    });


                    var localId;
                    $(".startRec").on("click", function () {
                        wx.startRecord();
                    })

                    $(".stopRec").on("click", function () {
                        wx.stopRecord({
                            success: function (res) {
                                localId = res.localId;
                            }
                        });
                    })

                    wx.onVoiceRecordEnd({
                        // 录音时间超过一分钟没有停止的时候会执行 complete 回调
                        complete: function (res) {
                            localId = res.localId;
                        }
                    });

                    $(".playRec").on("click", function () {
                        wx.playVoice({
                            localId: localId // 需要播放的音频的本地ID，由stopRecord接口获得
                        });
                    })

                    $(".transRec").on("click", function () {
                        wx.translateVoice({
                            localId: localId, // 需要识别的音频的本地Id，由录音相关接口获得
                            isShowProgressTips: 1, // 默认为1，显示进度提示
                            success: function (res) {
                                $(".resRec").append($("<p>"+res.translateResult+"</p>"))
                                // alert(res.translateResult); // 语音识别的结果
                            }
                        });
                    })
                    wx.error(function (res) {
                        // config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名。  
                        alert("errorMSG:" + res);
                    });

                });

            }
        })
    </script>
</body>

</html>